package com.gks.service;

import com.gks.entities.User;
import com.gks.entities.vo.UserVo;

public interface UserService {
    /**
     * 注册用户
     * @param user 用户信息
     */
    void register(User user);
    /**
     * 登录
     * @param user 用户信息
     * @return User
     */
    User login(User user);
    /**
     * 查找用户
     * @param account 用户账户
     * @return UserVo
     */
    UserVo selectUserByAccount(String account);
    /**
     * 根据昵称模糊查询账号
     * @param namePattern 模糊昵称
     * @return UserVo
     */
    UserVo selectUserByNameLike(String namePattern);
    /**
     * 更新用户信息
     * @param user 用户信息
     */
    void updateUserByAccount(User user);
    /**
     * 修改密码
     * @param account 用户账户
     * @param oldPassword 旧密码
     * @param newPassword 新密码
     */
    void changePassword(String account, String oldPassword, String newPassword);
}
